package cn.life.business.apply.dao;



import cn.life.business.apply.entity.po.ApplyDetailPo;
import cn.life.business.apply.entity.po.ApplyPo;
import cn.life.business.apply.entity.vo.ApplyVo;
import cn.life.common.entity.po.MessagePo;
import cn.life.common.entity.vo.Pagination;

import java.util.List;

/**
 * @author 王振宇
 * @Description:
 * @Date 2018-09-18 10:58:58
 */
public interface ApplyDao {

    /**
     * @Description:    增加申请主表记录
     * @param applyPo
     * @return:
     * @Author 王振宇
     * @Date 2018/09/18
     */
    Long addApply(ApplyPo applyPo);

    /**
     * @Description:    查询申请列表
     * @param applyVo
     * @return:
     * @Author 王振宇
     * @Date 2018/09/19
     */
    Pagination<ApplyVo> queryList(ApplyVo applyVo);

    /**
     * @Description:    单条查询申请列表和图片明细表
     * @param applyVo
     * @return:
     * @Author 王振宇
     * @Date 2018/09/20
     */
       ApplyVo querySingle(ApplyVo applyVo);

    /**
     * @Description:  修改申请
     * @param applyPo
     * @return:
     * @Author 王振宇
     * @Date 2018/09/20
     */
    int updateApply(ApplyPo applyPo);

    /**
     * @Description:  删除申请
     * @param applyPo
     * @return:
     * @Author 王振宇
     * @Date 2018/09/20
     */
    int deleteApply(ApplyPo applyPo);


    /**
     * @Description:  删除图片信息
     * @param applyPo
     * @return:
     * @Author 王振宇
     * @Date 2018/09/20
     */
    int deleteApplyImg(ApplyPo applyPo);


    /**
     * @Description:  导出查询
     * @param applyVo
     * @return:
     * @Author 王振宇
     * @Date 2018/09/27
     */

    List<ApplyVo> Excel(ApplyVo applyVo);

    /**
     * @Description:  查询门面装饰条数
     * @param
     * @return:applyVo
     * @Author 王振宇
     * @Date 2018/09/29
     */
    Integer queryAdvertisement(ApplyPo applyPo);

    /**
     * @Description:    新增图片明细表信息
     *
     * @param detailPos
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-09-30 上午 11:14
     */
    void addApplyDetailList(List<ApplyDetailPo> detailPos);
    /**
     * @Description:    查询主表和审查表状态信息
     *
     * @param applyVo
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-09-30 上午 11:25
     */
    ApplyVo queryApplyInfo(ApplyVo applyVo);
    /**
     * @Description:    查询明细集合信息
     *
     * @param applyVo
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-09-30 上午 11:25
     */
    List<ApplyDetailPo> queryAppliDetailList(ApplyVo applyVo);
    /**
     * @Description:    修改申请表中图片路径信息
     *
     * @param applyPo
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-10-10 上午 9:40
     */
    void updateApplyCertifiedImgUrl(ApplyPo applyPo);
    /**
     * @Description:    修改审查状态
     *
     * @param applyPo
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-10-16 下午 3:29
     */
    void updateAuditState(ApplyPo applyPo);
    /**
     * @Description:    存储短信验证码
     *
     * @param messagePo
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-10-17 下午 2:06
     */
    int addPhoneMessage(MessagePo messagePo);
    /**
     * @Description:    校验短信验证码
     *
     * @param messagePo
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-10-17 下午 2:06
     */
    boolean checkPhoneMessage(MessagePo messagePo);
    /**
     * @Description:    获取审核人员的手机串
     *
     * @param
     * @return:
     *
     * @Author 李佳明
     * @Date 2018-10-19 下午 5:17
     */
    String getAuditPerPhone();
}
